package com.blue.po.author;

import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.io.Serial;
import java.io.Serializable;
import java.math.BigDecimal;

/**
 * 菜单表
 *
 * @ cnj
 * @email 15696471158@163.com
 * @date 2024-03-17
 */
@Data
@TableName("author_menu")
public class MenuPO implements Serializable {
    @Serial
    private static final long serialVersionUID = 1L;

    @TableId
    @Schema(description = "菜单ID")
    private String menuId;

    @Schema(description = "父菜单ID，一级菜单为0")
    private String parentId;

    @Schema(description = "路径")
    private String path;

    @Schema(description = "菜单名称")
    private String name;

    @Schema(description = "标题")
    private String title;

    @Schema(description = "按钮权限code")
    private String code;

    @Schema(description = "类型(0:目录,1:菜单,2:按钮)")
    private String type;

    @Schema(description = "菜单图标")
    private String icon;

    @Schema(description = "排序")
    private BigDecimal sort;

    @TableField(fill = FieldFill.INSERT)
    @Schema(description = "创建者ID")
    private String creatorId;

    @TableField(fill = FieldFill.INSERT)
    @Schema(description = "创建时间")
    private String createTime;

    @TableField(fill = FieldFill.UPDATE)
    @Schema(description = "最近更新者ID")
    private String updaterId;

    @TableField(fill = FieldFill.UPDATE)
    @Schema(description = "最近更新时间")
    private String updateTime;

}
